package com.mallcai.bigdata.ladon.dpl.entity.peekdata;

import com.mallcai.bigdata.ladon.dpl.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.StringUtils;

import java.util.concurrent.locks.ReadWriteLock;

/**
 * @author feixy
 * @version 1.0
 * @date 2019-07-03 10:04
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class PeekField extends BaseEntity {

    /**
     * 所属取数id
     */
    private Long peekId;

    /**
     * 模型的字段id
     */
    private Long metaId;

    /**
     * 字段类型,维度还是指标
     */
    private String type;

    /**
     * 聚合函数
     */
    private String aggExpression;

    /**
     * 原始数据类型
     */
    private String dataType;

    /**
     * 聚合后的类型
     */
    private String aggDataType;

    /**
     * 格式化
     */
    private String format;

    /**
     * 别名
     */
    private String alias;

    // 附加信息
    /**
     * meta字段对应的名称
     */
    private String metaName;
    /**
     * meta字段对应的展示名称
     */
    private String metaShowName;


    public String getShowName() {
        if (StringUtils.isNotEmpty(alias)) {
            return alias;
        }
        return metaShowName;
    }

}
